package com.ruoyi.project.syl_LiBiao.domain;

import java.util.Date;
import java.util.Objects;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 【请填写功能名称】对象 outpatient_patient
 * 患者表
 * @author ruoyi
 * @date 2021-07-14
 */
public class OutpatientPatient extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 患者id */
    private Integer patientId;

    /** 患者姓名 */
    @Excel(name = "患者姓名")
    private String patientName;

    /** 患者性别 */
    @Excel(name = "患者性别")
    private String patientSex;

    /** 患者身份证 */
    @Excel(name = "患者身份证")
    private String patientIdcard;

    /** 患者年龄 */
    @Excel(name = "患者年龄")
    private Integer patientAge;

    /** 患者电话 */
    @Excel(name = "患者电话")
    private Integer patientPhone;

    /** 患者地址 */
    @Excel(name = "患者地址")
    private String patientAddr;

    /** 患者出生日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "患者出生日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date patientBirth;

    /** 患者过敏史 */
    @Excel(name = "患者过敏史")
    private String patientAlle;

    public OutpatientPatient() {
    }

    @Override
    public String toString() {
        return "OutpatientPatientDxy{" +
                "patientId=" + patientId +
                ", patientName='" + patientName + '\'' +
                ", patientSex='" + patientSex + '\'' +
                ", patientIdcard='" + patientIdcard + '\'' +
                ", patientAge=" + patientAge +
                ", patientPhone=" + patientPhone +
                ", patientAddr='" + patientAddr + '\'' +
                ", patientBirth=" + patientBirth +
                ", patientAlle='" + patientAlle + '\'' +
                '}';
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof OutpatientPatient)) return false;
        OutpatientPatient that = (OutpatientPatient) o;
        return Objects.equals(patientId, that.patientId) &&
                Objects.equals(patientName, that.patientName) &&
                Objects.equals(patientSex, that.patientSex) &&
                Objects.equals(patientIdcard, that.patientIdcard) &&
                Objects.equals(patientAge, that.patientAge) &&
                Objects.equals(patientPhone, that.patientPhone) &&
                Objects.equals(patientAddr, that.patientAddr) &&
                Objects.equals(patientBirth, that.patientBirth) &&
                Objects.equals(patientAlle, that.patientAlle);
    }

    @Override
    public int hashCode() {
        return Objects.hash(patientId, patientName, patientSex, patientIdcard, patientAge, patientPhone, patientAddr, patientBirth, patientAlle);
    }

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public Integer getPatientId() {
        return patientId;
    }

    public void setPatientId(Integer patientId) {
        this.patientId = patientId;
    }

    public String getPatientName() {
        return patientName;
    }

    public void setPatientName(String patientName) {
        this.patientName = patientName;
    }

    public String getPatientSex() {
        return patientSex;
    }

    public void setPatientSex(String patientSex) {
        this.patientSex = patientSex;
    }

    public String getPatientIdcard() {
        return patientIdcard;
    }

    public void setPatientIdcard(String patientIdcard) {
        this.patientIdcard = patientIdcard;
    }

    public Integer getPatientAge() {
        return patientAge;
    }

    public void setPatientAge(Integer patientAge) {
        this.patientAge = patientAge;
    }

    public Integer getPatientPhone() {
        return patientPhone;
    }

    public void setPatientPhone(Integer patientPhone) {
        this.patientPhone = patientPhone;
    }

    public String getPatientAddr() {
        return patientAddr;
    }

    public void setPatientAddr(String patientAddr) {
        this.patientAddr = patientAddr;
    }

    public Date getPatientBirth() {
        return patientBirth;
    }

    public void setPatientBirth(Date patientBirth) {
        this.patientBirth = patientBirth;
    }

    public String getPatientAlle() {
        return patientAlle;
    }

    public void setPatientAlle(String patientAlle) {
        this.patientAlle = patientAlle;
    }

    public OutpatientPatient(Integer patientId, String patientName, String patientSex, String patientIdcard, Integer patientAge, Integer patientPhone, String patientAddr, Date patientBirth, String patientAlle) {
        this.patientId = patientId;
        this.patientName = patientName;
        this.patientSex = patientSex;
        this.patientIdcard = patientIdcard;
        this.patientAge = patientAge;
        this.patientPhone = patientPhone;
        this.patientAddr = patientAddr;
        this.patientBirth = patientBirth;
        this.patientAlle = patientAlle;
    }
}
